//+
SetFactory("OpenCASCADE");
Rectangle(1) = {0, 0, 0, 9, 6, 0};
//+
eps = 0.15;
Rectangle(2) = {0, 2.5-eps, 0, 3., eps, 0};
Rectangle(3) = {4.5-eps, 0, 0, eps, 2.5, 0};
Rectangle(4) = {0, 4-eps, 0, 2., eps, 0};
Rectangle(5) = {3.5-eps, 4-eps, 0, eps, 2.+eps, 0};
Rectangle(6) = {3.5, 4.5, 0, 0.7, 1.5, 0};
Rectangle(7) = {4.2, 5.3, 0, 2, 0.7, 0};
//+
tableL = 1.7;
tableW = 0.8;
Rectangle(8) = {6, 1, 0, tableL, tableW, 0};
//+
Disk(57) = {6.2, 2.1, 0., 0.12, 0.12};
Disk(58) = {6.8, 2.1, 0., 0.12, 0.12};
Disk(59) = {7.4, 2.1, 0., 0.12, 0.12};
Disk(60) = {6.2, 0.65, 0., 0.12, 0.12};
Disk(61) = {6.8, 0.65, 0., 0.12, 0.12};
Disk(62) = {7.4, 0.65, 0., 0.12, 0.12};
//+
Rectangle(66) = {0, 0.7, -0., 1.8, 1., 0.};
//+
Rectangle(67) = {0, 5.3, -0., 1.8, 0.7, 0.};
//+
Disk(68) = {7.85, 4.85, 0., 0.4, 0.4};
Rectangle(69) = {7.5+0.9, 4.5+0.2, -0., 0.3, 0.3, 0.};
Rectangle(70) = {7.5-0.5, 4.5+0.2, -0., 0.3, 0.3, 0.};
Rectangle(71) = {7.5+0.2, 4.5-0.5, -0., 0.3, 0.3, 0.};
Rectangle(72) = {7.5+0.2, 4.5+0.9, -0., 0.3, 0.3, 0.};
//+
Rotate {{0, 0, 1}, {7.85, 4.85, 0}, Pi/4} { 
  Surface{68}; Surface{69}; Surface{70}; Surface{71}; Surface{72};
}
//+
roomWall = news;
BooleanDifference(roomWall) = { Surface{1}; Delete; }{ Surface{2,3, 4, 5, 6, 7, 8, 57, 58, 59, 60, 61, 62, 66, 67, 68, 69, 70, 71, 72}; Delete; };
//+
Physical Surface("Domain") = {81};
//+
Physical Curve("Absorbing") = {26, 25, 51, 50, 49, 52, 55, 54, 48, 53, 56, 57, 36, 37, 38, 35, 32, 33, 31, 34, 43, 44, 45, 46, 47, 40, 39, 42, 41, 23, 24, 22, 21, 20, 19, 17, 18, 28, 29, 27, 30, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16};
